#include "vix.h"
#include <iostream>

using namespace std;
VixHandle VixHost_Connect(int apiVersion,
                          VixServiceProvider hostType,
                          const char *hostName,
                          int hostPort,
                          const char *userName,
                          const char *password,
                          VixHostOptions options,
                          VixHandle propertyListHandle,
                          VixEventProc *callbackProc,
                          void *clientData)
{
    cout << "VixHost_Connect.. " << endl;
    return -9;
}

void VixHost_Disconnect(VixHandle hostHandle) 
{}

VixError VixJob_Wait(VixHandle jobHandle, 
                     VixPropertyID firstPropertyID, 
                     ...)
{ 
    cout << "VixJob_Wait.. " 
        << "firstPropertyID: " << firstPropertyID << endl;
    return VIX_OK; 
}


VixError Vix_GetProperties(VixHandle handle, 
                           VixPropertyID firstPropertyID, ...)

{ 
    cout << "Vix_GetProperties.. " 
        << "firstPropertyID: " << firstPropertyID << endl;
    return VIX_OK; 
}

const char *Vix_GetErrorText(VixError err, const char *locale)
{
    return "What error? No error!";
}


VixHandle VixHost_FindItems(VixHandle hostHandle,
                            VixFindItemType searchType,
                            VixHandle searchCriteria,
                            int32 timeout,
                            VixEventProc *callbackProc,
                            void *clientData)
{
    cout << "Vix_GetProperties.. " 
        << "searchType: " << searchType 
        << "searchCriteria: " << searchCriteria
        << "callbackProc: " << callbackProc
        << endl;
    return VIX_INVALID_HANDLE;
}

VixHandle VixVM_Open(VixHandle hostHandle,
                     const char *vmxFilePathName,
                     VixEventProc *callbackProc,
                     void *clientData)
{
    return VIX_INVALID_HANDLE;
}


void Vix_FreeBuffer(void *p) { delete[] p; }

void Vix_ReleaseHandle(VixHandle handle) { }

